package bishiqiangxun;
import java.util.*;
public class Test2 {
    //题目 : day30 第二题  相差不超过k的最多数
    //算法 : 双指针    right不用回退  + 排序  滑动窗口
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        //先输入
        int n = in.nextInt();
        int k = in.nextInt();

        int[] arr =  new int[n];
        for(int i = 0; i < n; i++) {
            arr[i] = in.nextInt();
        }

        //先对数组进行排序   用双指针 的方法  right 不用回退
        Arrays.sort(arr);
        int len = 0;
        int left = 0;
        int right = 0;
        while(right < n) {
            if((arr[right] - arr[left]) > k) {
                left++;
            }

            len = Math.max(len,right-left+1);
            right++;
        }
        System.out.println(len);
    }
}
